package com.ftg.learn.chapter09.collection;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * 高并发
 *
 * @author lijiaxin
 * @version 1.0
 * @date 2023/8/21 11:10
 */

public class LearnConcurrentMap {

    public static void main(String[] args) {

        Map<String, String> map3 = new ConcurrentHashMap<>(4);
        // 1 : 高并发问题  不会产生大量阻塞

        // 2 :  理论上来说不会产生死锁
        map3.put("name","康加修");

        // 为什么不会产生大量阻塞?

        //1 : segment lock 1.8以前

        //2 : cas 理论  1.8
//        CAS : compare and swap
//        悲观 --- 悲观锁
//        水 :  lock

//        synchronized () {
//            // 乐观 ---》 乐观锁
////        我要记得，标记 现在水位置     回来以后要比较一次... commapre  没有人动过  可以喝      swap
//        }

//        select count(nos) from product where id = 123;
//
//        int n = 5;
//        int myn = 2;
//        if(n > myn){
//            update product set nos -= myn where id = 123 and nos = n;
//        }
//
//        多任务   -- 订单 -- 支付
//                        -- 扣
    }
}
